home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / var / lib / dpkg / info / fuse-utils.postinst < prev    next >
Text File  |  2009-03-05  |  2KB  |  77 lines

  1. #!/bin/sh -e
  2.  
  3. test $DEBIAN_SCRIPT_DEBUG && set -v -x
  4.   
  5.  
  6. case "$1" in
  7.   configure|upgrade)
  8.   
  9.   # Create fuse group
  10.   echo "creating fuse group..."
  11.   getent group fuse >/dev/null || addgroup --system fuse
  12.  
  13.   # Detect if udev is active
  14.   udev=0
  15.   if grep -qE '^udev /dev' /proc/mounts; then
  16.       udev=1
  17.   elif [ -d /dev/.udevdb/ -o -d /dev/.udev/ ]; then
  18.       udev=1
  19.   fi
  20.   # Create device node with the right perms
  21.   if [ ${udev} -eq 0 ]; then
  22.       # Call makedev and fix perms
  23.     cd /dev; MAKEDEV fuse
  24.     chgrp fuse /dev/fuse
  25.   else
  26.       # Udev is active, nothing to do.
  27.     echo "udev active, skipping device node creation."
  28.     # Debian bug #473545
  29.     # Udev rules says "fuse" group, however this group doesn't exist in
  30.     # base system, so the node is root:root.
  31.     # Once fuse-utils is installed the group exists and udev will set proper
  32.     # group. The bug may come from udev, or base system, which use a group
  33.     # that doens't exist. For now, let's workaround this issue here.
  34.     # Follow-up for #473545
  35.     # A hack has been added to initscript for the first time installation
  36.     # if tyou don't have fuse kernel module already loaded
  37.     # Moreover we need to reload udev before chgrp, otherwise fuse group
  38.     # is not known
  39.         # only invoke-rc.d udev if the init script exists (see #499352)
  40.     [ ! -f /etc/init.d/udev ] || invoke-rc.d udev reload
  41.     test -e /dev/fuse && chgrp fuse /dev/fuse || true
  42.   fi
  43.  
  44.   test -f /etc/default/fuse-utils && rm -f /etc/default/fuse-utils
  45.   
  46.   chown root:fuse /etc/fuse.conf
  47.   chmod 0640 /etc/fuse.conf
  48.  
  49.   if ! grep -qw fuse /proc/filesystems; then
  50.     # try to load the module
  51.     lsmod | grep -q fuse > /dev/null 2>&1 || modprobe fuse > /dev/null 2>&1 || echo "Unable to load fuse module, but continuing anyway; please reboot to enable fuse"
  52.  
  53.     # and make sure it's there after next reboot
  54.     #grep fuse /etc/modules > /dev/null 2>&1 || echo "fuse" >> /etc/modules
  55.   fi
  56.  
  57.   # Remove from /etc/modules
  58.   sed -i -e '/^\s*fuse\s*$/d' /etc/modules
  59.  
  60.   if type update-initramfs >/dev/null 2>&1; then
  61.     update-initramfs -u
  62.   fi
  63.   ;;
  64.  
  65.   abort-upgrade|abort-remove|abort-deconfigure)
  66.   ;;
  67.  
  68.   *)
  69.     echo "postinst called with unknown argument \`$1'" >&2
  70.     exit 1
  71.   ;;
  72. esac
  73.  
  74.  
  75.  
  76. exit 0
  77.